home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / gnu / nethack.lha / nethack-3.1 / include / monflag.h < prev    next >
C/C++ Source or Header  |  1993-01-17  |  7KB  |  150 lines

  1. /*    SCCS Id: @(#)monflag.h    3.1    92/11/25    */
  2. /* Copyright (c) 1989 Mike Threepoint                  */
  3. /* NetHack may be freely redistributed.  See license for details. */
  4.  
  5. #ifndef MONFLAG_H
  6. #define MONFLAG_H
  7.  
  8. #define MS_SILENT    0    /* makes no sound */
  9. #define MS_SQEEK    1    /* squeaks, as a rodent */
  10. #define MS_SQAWK    2    /* squawks, as a bird */
  11. #define MS_HISS        3    /* hisses */
  12. #define MS_BUZZ        4    /* buzzes (killer bee) */
  13. #define MS_GRUNT    5    /* grunts (or speaks own language) */
  14. #define MS_GROWL    6    /* growls */
  15. #define MS_BARK        7    /* if full moon, may howl */
  16. #define MS_MEW        8    /* mews or hisses */
  17. #define MS_ROAR        9    /* roars */
  18. #define MS_NEIGH    10    /* neighs, as an equine */
  19. #define MS_WAIL        11    /* wails, as a tortured soul */
  20. #define MS_GURGLE    12    /* gurgles, as liquid or through saliva */
  21. #define MS_BURBLE    13    /* burbles (jabberwock) */
  22. #define MS_SHRIEK    15    /* wakes up others */
  23. #define MS_LAUGH    17    /* grins, smiles, giggles, and laughs */
  24. #define MS_MUMBLE    18    /* says something or other */
  25. #define MS_IMITATE    19    /* imitates others (leocrotta) */
  26. #define MS_SEDUCE    20    /* "Hello, sailor." (Nymphs) */
  27. #define MS_VAMPIRE    21    /* vampiric seduction, Vlad's exclamations */
  28. #define MS_ORC        MS_GRUNT    /* intelligent brutes */
  29. #define MS_BRIBE    25    /* asks for money, or berates you */
  30. #define MS_CUSS        26    /* berates (demons) or intimidates (Wiz) */
  31. #define MS_NURSE    27    /* "Take off your shirt, please." */
  32. #define MS_DJINNI    28    /* "Thank you for freeing me!" */
  33. #define MS_HUMANOID    29    /* generic traveling companion */
  34. #define MS_GUARD    30    /* "Please drop that gold and follow me." */
  35. #define MS_SELL        31    /* demand payment, complain about shoplifters */
  36. #define MS_ORACLE    32    /* do a consultation */
  37. #define MS_PRIEST    33    /* ask for contribution; do cleansing */
  38. #ifdef KOPS
  39. #define MS_ARREST    34    /* "Stop in the name of the law!" (Kops) */
  40. #endif
  41. #define MS_SOLDIER    35    /* army and watchmen expressions */
  42. #ifdef MULDGN
  43. #define MS_LEADER    36    /* your class leader */
  44. #define MS_NEMESIS    37    /* your nemesis */
  45. #define MS_GUARDIAN    38    /* your leader's guards */
  46. #endif
  47. #define MS_BONES    39    /* rattles bones (skeleton) */
  48. #define MS_DEATH    40    /* \                */
  49. #define MS_PESTILENCE    41    /*  |- astral level special monsters */
  50. #define MS_FAMINE    42    /* /                */
  51.  
  52.  
  53. #define MR_FIRE         0x01    /* resists fire */
  54. #define MR_COLD         0x02    /* resists cold */
  55. #define MR_SLEEP        0x04    /* resists sleep */
  56. #define MR_DISINT       0x08    /* resists disintegration */
  57. #define MR_ELEC         0x10    /* resists electricity */
  58. #define MR_POISON       0x20    /* resists poison */
  59. #define MR_ACID         0x40    /* resists acid */
  60. #define MR_STONE        0x80    /* resists petrification */
  61. /* other resistances: magic, sickness */
  62. /* other conveyances: teleport, teleport control, telepathy */
  63.  
  64.  
  65. #define M1_FLY        0x00000001L    /* can fly or float */
  66. #define M1_SWIM        0x00000002L    /* can traverse water */
  67. #define M1_AMORPHOUS    0x00000004L    /* can flow under doors */
  68. #define M1_WALLWALK    0x00000008L    /* can phase thru rock */
  69. #define M1_CLING    0x00000010L    /* can cling to ceiling */
  70. #define M1_TUNNEL    0x00000020L    /* can tunnel thru rock */
  71. #define M1_NEEDPICK    0x00000040L    /* needs pick to tunnel */
  72. #define M1_CONCEAL    0x00000080L    /* hides under objects */
  73. #define M1_HIDE        0x00000100L    /* mimics, blends in with ceiling */
  74. #define M1_AMPHIBIOUS    0x00000200L    /* can survive underwater */
  75. #define M1_BREATHLESS    0x00000200L    /* doesn't need to breathe */
  76. #define M1_NOEYES    0x00001000L    /* no eyes to gaze into or blind */
  77. #define M1_NOHANDS    0x00002000L    /* no hands to handle things */
  78. #define M1_NOLIMBS    0x00006000L    /* no arms/legs to kick/wear on */
  79. #define M1_NOHEAD    0x00008000L    /* no head to behead */
  80. #define M1_MINDLESS    0x00010000L    /* has no mind--golem, zombie, mold */
  81. #define M1_HUMANOID    0x00020000L    /* has humanoid head/arms/torso */
  82. #define M1_ANIMAL    0x00040000L    /* has animal body */
  83. #define M1_SLITHY    0x00080000L    /* has serpent body */
  84. #define M1_UNSOLID    0x00100000L    /* has no solid or liquid body */
  85. #define M1_THICK_HIDE    0x00200000L    /* has thick hide or scales */
  86. #define M1_OVIPAROUS    0x00400000L    /* can lay eggs */
  87. #define M1_REGEN    0x00800000L    /* regenerates hit points */
  88. #define M1_SEE_INVIS    0x01000000L    /* can see invisible creatures */
  89. #define M1_TPORT    0x02000000L    /* can teleport */
  90. #define M1_TPORT_CNTRL    0x04000000L    /* controls where it teleports to */
  91. #define M1_ACID        0x08000000L    /* acidic to eat */
  92. #define M1_POIS        0x10000000L    /* poisonous to eat */
  93. #define M1_CARNIVORE    0x20000000L    /* eats corpses */
  94. #define M1_HERBIVORE    0x40000000L    /* eats fruits */
  95. #define M1_OMNIVORE    0x60000000L    /* eats both */
  96. #define M1_METALLIVORE    0x80000000L    /* eats metal */
  97.  
  98. #define M2_NOPOLY    0x00000001L    /* players mayn't poly into one */
  99. #define M2_UNDEAD    0x00000002L    /* is walking dead */
  100. #define M2_WERE        0x00000004L    /* is a lycanthrope */
  101. #define M2_ELF        0x00000008L    /* is an elf */
  102. #define M2_DWARF    0x00000010L    /* is a dwarf */
  103. #define M2_GIANT    0x00000020L    /* is a giant */
  104. #define M2_ORC        0x00000040L    /* is an orc */
  105. #define M2_HUMAN    0x00000080L    /* is a human */
  106. #define M2_DEMON    0x00000100L    /* is a demon */
  107. #define M2_MERC        0x00000200L    /* is a guard or soldier */
  108. #define M2_LORD        0x00000400L    /* is a lord to its kind */
  109. #define M2_PRINCE    0x00000800L    /* is an overlord to its kind */
  110. #define M2_MINION    0x00001000L    /* is a minion of a deity */
  111. #define M2_MALE        0x00010000L    /* always male */
  112. #define M2_FEMALE    0x00020000L    /* always female */
  113. #define M2_NEUTER    0x00040000L    /* neither male nor female */
  114. #define M2_PNAME    0x00080000L    /* monster name is a proper name */
  115. #define M2_HOSTILE    0x00100000L    /* always starts hostile */
  116. #define M2_PEACEFUL    0x00200000L    /* always starts peaceful */
  117. #define M2_DOMESTIC    0x00400000L    /* can be tamed by feeding */
  118. #define M2_WANDER    0x00800000L    /* wanders randomly */
  119. #define M2_STALK    0x01000000L    /* follows you to other levels */
  120. #define M2_NASTY    0x02000000L    /* extra-nasty monster (more xp) */
  121. #define M2_STRONG    0x04000000L    /* strong (or big) monster */
  122. #define M2_ROCKTHROW    0x08000000L    /* throws boulders */
  123. #define M2_GREEDY    0x10000000L    /* likes gold */
  124. #define M2_JEWELS    0x20000000L    /* likes gems */
  125. #define M2_COLLECT    0x40000000L    /* picks up weapons and food */
  126. #define M2_MAGIC    0x80000000L    /* picks up magic items */
  127.  
  128. #define M3_WANTSAMUL    0x01        /* would like to steal the amulet */
  129. #define M3_WANTSBELL    0x02        /* wants the bell */
  130. #define M3_WANTSBOOK    0x04        /* wants the book */
  131. #define M3_WANTSCAND    0x08        /* wants the candelabrum */
  132. #ifdef MULDGN
  133. #define M3_WANTSARTI    0x10        /* wants the quest artifact */
  134. #endif
  135. #define M3_WAITFORU    0x40        /* waits to see you or get attacked */
  136. #define M3_CLOSE    0x80        /* lets you close unless attacked */
  137.  
  138. #define M3_COVETOUS    0x1f        /* wants something */
  139. #define M3_WAITMASK    0xc0        /* waiting... */
  140.  
  141. #define MZ_TINY        0        /* < 2' */
  142. #define MZ_SMALL    1        /* 2-4' */
  143. #define MZ_MEDIUM    2        /* 4-7' */
  144. #define MZ_HUMAN    MZ_MEDIUM    /* human-sized */
  145. #define MZ_LARGE    3        /* 7-12' */
  146. #define MZ_HUGE        4        /* 12-25' */
  147. #define MZ_GIGANTIC    7        /* off the scale */
  148.  
  149. #endif /* MONFLAG_H */
  150.